/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package org.hl7.v3;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

import org.eclipse.emf.common.util.Enumerator;

/**
 * <!-- begin-user-doc -->
 * A representation of the literals of the enumeration '<em><b>Race Asian</b></em>',
 * and utility methods for working with them.
 * <!-- end-user-doc -->
 * <!-- begin-model-doc -->
 * specDomain: S15743 (C-0-T14914-S15743-cpt)
 * <!-- end-model-doc -->
 * @see org.hl7.v3.V3Package#getRaceAsian()
 * @model extendedMetaData="name='RaceAsian'"
 * @generated
 */
public enum RaceAsian implements Enumerator {
	/**
	 * The '<em><b>20289</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20289_VALUE
	 * @generated
	 * @ordered
	 */
	_20289(0, "_20289", "2028-9"),

	/**
	 * The '<em><b>20297</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20297_VALUE
	 * @generated
	 * @ordered
	 */
	_20297(1, "_20297", "2029-7"),

	/**
	 * The '<em><b>20305</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20305_VALUE
	 * @generated
	 * @ordered
	 */
	_20305(2, "_20305", "2030-5"),

	/**
	 * The '<em><b>20313</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20313_VALUE
	 * @generated
	 * @ordered
	 */
	_20313(3, "_20313", "2031-3"),

	/**
	 * The '<em><b>20321</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20321_VALUE
	 * @generated
	 * @ordered
	 */
	_20321(4, "_20321", "2032-1"),

	/**
	 * The '<em><b>20339</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20339_VALUE
	 * @generated
	 * @ordered
	 */
	_20339(5, "_20339", "2033-9"),

	/**
	 * The '<em><b>20347</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20347_VALUE
	 * @generated
	 * @ordered
	 */
	_20347(6, "_20347", "2034-7"),

	/**
	 * The '<em><b>20362</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20362_VALUE
	 * @generated
	 * @ordered
	 */
	_20362(7, "_20362", "2036-2"),

	/**
	 * The '<em><b>20370</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20370_VALUE
	 * @generated
	 * @ordered
	 */
	_20370(8, "_20370", "2037-0"),

	/**
	 * The '<em><b>20388</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20388_VALUE
	 * @generated
	 * @ordered
	 */
	_20388(9, "_20388", "2038-8"),

	/**
	 * The '<em><b>20487</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20487_VALUE
	 * @generated
	 * @ordered
	 */
	_20487(10, "_20487", "2048-7"),

	/**
	 * The '<em><b>20396</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20396_VALUE
	 * @generated
	 * @ordered
	 */
	_20396(11, "_20396", "2039-6"),

	/**
	 * The '<em><b>20404</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20404_VALUE
	 * @generated
	 * @ordered
	 */
	_20404(12, "_20404", "2040-4"),

	/**
	 * The '<em><b>20412</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20412_VALUE
	 * @generated
	 * @ordered
	 */
	_20412(13, "_20412", "2041-2"),

	/**
	 * The '<em><b>20529</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20529_VALUE
	 * @generated
	 * @ordered
	 */
	_20529(14, "_20529", "2052-9"),

	/**
	 * The '<em><b>20420</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20420_VALUE
	 * @generated
	 * @ordered
	 */
	_20420(15, "_20420", "2042-0"),

	/**
	 * The '<em><b>20495</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20495_VALUE
	 * @generated
	 * @ordered
	 */
	_20495(16, "_20495", "2049-5"),

	/**
	 * The '<em><b>20503</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20503_VALUE
	 * @generated
	 * @ordered
	 */
	_20503(17, "_20503", "2050-3"),

	/**
	 * The '<em><b>20438</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20438_VALUE
	 * @generated
	 * @ordered
	 */
	_20438(18, "_20438", "2043-8"),

	/**
	 * The '<em><b>20446</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20446_VALUE
	 * @generated
	 * @ordered
	 */
	_20446(19, "_20446", "2044-6"),

	/**
	 * The '<em><b>20511</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20511_VALUE
	 * @generated
	 * @ordered
	 */
	_20511(20, "_20511", "2051-1"),

	/**
	 * The '<em><b>20453</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20453_VALUE
	 * @generated
	 * @ordered
	 */
	_20453(21, "_20453", "2045-3"),

	/**
	 * The '<em><b>20354</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20354_VALUE
	 * @generated
	 * @ordered
	 */
	_20354(22, "_20354", "2035-4"),

	/**
	 * The '<em><b>20461</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20461_VALUE
	 * @generated
	 * @ordered
	 */
	_20461(23, "_20461", "2046-1"),

	/**
	 * The '<em><b>20479</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_20479_VALUE
	 * @generated
	 * @ordered
	 */
	_20479(24, "_20479", "2047-9");

	/**
	 * The '<em><b>20289</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20289</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20289
	 * @model literal="2028-9"
	 * @generated
	 * @ordered
	 */
	public static final int _20289_VALUE = 0;

	/**
	 * The '<em><b>20297</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20297</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20297
	 * @model literal="2029-7"
	 * @generated
	 * @ordered
	 */
	public static final int _20297_VALUE = 1;

	/**
	 * The '<em><b>20305</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20305</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20305
	 * @model literal="2030-5"
	 * @generated
	 * @ordered
	 */
	public static final int _20305_VALUE = 2;

	/**
	 * The '<em><b>20313</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20313</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20313
	 * @model literal="2031-3"
	 * @generated
	 * @ordered
	 */
	public static final int _20313_VALUE = 3;

	/**
	 * The '<em><b>20321</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20321</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20321
	 * @model literal="2032-1"
	 * @generated
	 * @ordered
	 */
	public static final int _20321_VALUE = 4;

	/**
	 * The '<em><b>20339</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20339</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20339
	 * @model literal="2033-9"
	 * @generated
	 * @ordered
	 */
	public static final int _20339_VALUE = 5;

	/**
	 * The '<em><b>20347</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20347</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20347
	 * @model literal="2034-7"
	 * @generated
	 * @ordered
	 */
	public static final int _20347_VALUE = 6;

	/**
	 * The '<em><b>20362</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20362</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20362
	 * @model literal="2036-2"
	 * @generated
	 * @ordered
	 */
	public static final int _20362_VALUE = 7;

	/**
	 * The '<em><b>20370</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20370</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20370
	 * @model literal="2037-0"
	 * @generated
	 * @ordered
	 */
	public static final int _20370_VALUE = 8;

	/**
	 * The '<em><b>20388</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20388</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20388
	 * @model literal="2038-8"
	 * @generated
	 * @ordered
	 */
	public static final int _20388_VALUE = 9;

	/**
	 * The '<em><b>20487</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20487</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20487
	 * @model literal="2048-7"
	 * @generated
	 * @ordered
	 */
	public static final int _20487_VALUE = 10;

	/**
	 * The '<em><b>20396</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20396</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20396
	 * @model literal="2039-6"
	 * @generated
	 * @ordered
	 */
	public static final int _20396_VALUE = 11;

	/**
	 * The '<em><b>20404</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20404</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20404
	 * @model literal="2040-4"
	 * @generated
	 * @ordered
	 */
	public static final int _20404_VALUE = 12;

	/**
	 * The '<em><b>20412</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20412</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20412
	 * @model literal="2041-2"
	 * @generated
	 * @ordered
	 */
	public static final int _20412_VALUE = 13;

	/**
	 * The '<em><b>20529</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20529</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20529
	 * @model literal="2052-9"
	 * @generated
	 * @ordered
	 */
	public static final int _20529_VALUE = 14;

	/**
	 * The '<em><b>20420</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20420</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20420
	 * @model literal="2042-0"
	 * @generated
	 * @ordered
	 */
	public static final int _20420_VALUE = 15;

	/**
	 * The '<em><b>20495</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20495</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20495
	 * @model literal="2049-5"
	 * @generated
	 * @ordered
	 */
	public static final int _20495_VALUE = 16;

	/**
	 * The '<em><b>20503</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20503</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20503
	 * @model literal="2050-3"
	 * @generated
	 * @ordered
	 */
	public static final int _20503_VALUE = 17;

	/**
	 * The '<em><b>20438</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20438</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20438
	 * @model literal="2043-8"
	 * @generated
	 * @ordered
	 */
	public static final int _20438_VALUE = 18;

	/**
	 * The '<em><b>20446</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20446</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20446
	 * @model literal="2044-6"
	 * @generated
	 * @ordered
	 */
	public static final int _20446_VALUE = 19;

	/**
	 * The '<em><b>20511</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20511</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20511
	 * @model literal="2051-1"
	 * @generated
	 * @ordered
	 */
	public static final int _20511_VALUE = 20;

	/**
	 * The '<em><b>20453</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20453</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20453
	 * @model literal="2045-3"
	 * @generated
	 * @ordered
	 */
	public static final int _20453_VALUE = 21;

	/**
	 * The '<em><b>20354</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20354</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20354
	 * @model literal="2035-4"
	 * @generated
	 * @ordered
	 */
	public static final int _20354_VALUE = 22;

	/**
	 * The '<em><b>20461</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20461</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20461
	 * @model literal="2046-1"
	 * @generated
	 * @ordered
	 */
	public static final int _20461_VALUE = 23;

	/**
	 * The '<em><b>20479</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>20479</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_20479
	 * @model literal="2047-9"
	 * @generated
	 * @ordered
	 */
	public static final int _20479_VALUE = 24;

	/**
	 * An array of all the '<em><b>Race Asian</b></em>' enumerators.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private static final RaceAsian[] VALUES_ARRAY =
		new RaceAsian[] {
			_20289,
			_20297,
			_20305,
			_20313,
			_20321,
			_20339,
			_20347,
			_20362,
			_20370,
			_20388,
			_20487,
			_20396,
			_20404,
			_20412,
			_20529,
			_20420,
			_20495,
			_20503,
			_20438,
			_20446,
			_20511,
			_20453,
			_20354,
			_20461,
			_20479,
		};

	/**
	 * A public read-only list of all the '<em><b>Race Asian</b></em>' enumerators.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static final List<RaceAsian> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));

	/**
	 * Returns the '<em><b>Race Asian</b></em>' literal with the specified literal value.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static RaceAsian get(String literal) {
		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
			RaceAsian result = VALUES_ARRAY[i];
			if (result.toString().equals(literal)) {
				return result;
			}
		}
		return null;
	}

	/**
	 * Returns the '<em><b>Race Asian</b></em>' literal with the specified name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static RaceAsian getByName(String name) {
		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
			RaceAsian result = VALUES_ARRAY[i];
			if (result.getName().equals(name)) {
				return result;
			}
		}
		return null;
	}

	/**
	 * Returns the '<em><b>Race Asian</b></em>' literal with the specified integer value.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static RaceAsian get(int value) {
		switch (value) {
			case _20289_VALUE: return _20289;
			case _20297_VALUE: return _20297;
			case _20305_VALUE: return _20305;
			case _20313_VALUE: return _20313;
			case _20321_VALUE: return _20321;
			case _20339_VALUE: return _20339;
			case _20347_VALUE: return _20347;
			case _20362_VALUE: return _20362;
			case _20370_VALUE: return _20370;
			case _20388_VALUE: return _20388;
			case _20487_VALUE: return _20487;
			case _20396_VALUE: return _20396;
			case _20404_VALUE: return _20404;
			case _20412_VALUE: return _20412;
			case _20529_VALUE: return _20529;
			case _20420_VALUE: return _20420;
			case _20495_VALUE: return _20495;
			case _20503_VALUE: return _20503;
			case _20438_VALUE: return _20438;
			case _20446_VALUE: return _20446;
			case _20511_VALUE: return _20511;
			case _20453_VALUE: return _20453;
			case _20354_VALUE: return _20354;
			case _20461_VALUE: return _20461;
			case _20479_VALUE: return _20479;
		}
		return null;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private final int value;

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private final String name;

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private final String literal;

	/**
	 * Only this class can construct instances.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private RaceAsian(int value, String name, String literal) {
		this.value = value;
		this.name = name;
		this.literal = literal;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public int getValue() {
	  return value;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public String getName() {
	  return name;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public String getLiteral() {
	  return literal;
	}

	/**
	 * Returns the literal value of the enumerator, which is its string representation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public String toString() {
		return literal;
	}
	
} //RaceAsian
